﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Domain.Model.SecretariasDeTransito;
using Domain.Model.Direcciones;
using Domain.Model.LicenciasDeConduccion;

namespace Domain.Model.Aggregates
{
    public abstract class SecretariaDeTransitoAggregate
    {

        public static SecretariaDeTransito CreateSecretariaDeTransito(
            SecretariaDeTransitoId secretariaDeTransitoId,
            String nit,
            String razonSocial,
            Direccion direccion
          )
        {
            return new SecretariaDeTransito(secretariaDeTransitoId, nit,razonSocial,direccion);
        }

        public static Direccion CreateDireccion(
            String domicilio,
            String municipio,
            String localidad,
            String codigoPostal
          )
        {
            return new Direccion(domicilio, municipio, localidad, codigoPostal);
        }

        public static LicenciaConduccion CreateLicenciaConduccion(
            String numero,
            DateTime fechaExpedicion,
            DateTime fechaVencimiento,
            String categoria,
            SecretariaDeTransitoId secretariaTransitoId
            )
        {
            return new LicenciaConduccion(numero, fechaExpedicion, fechaVencimiento, categoria, secretariaTransitoId);
        }
    }
}
